package cradleofrome;

/**
 *
 * @author Alex
 */
public class Selector extends Spelobjecten{
 
    /*
     * Constructor van de Selector
     */
    public Selector(Positie mijnPositie){

        super(mijnPositie, true);
        mijnPositie.setSelector(this);

        }

    /**
     * Methode om de selector te bewegen
     * @param richting de richting waarin de selector moet bewegen
     * @return true als het bewegen gelukt is en anders false
     */
    @Override
        public boolean move(String richting){

            boolean gelukt = false;

            if(mijnPositie.getBuur(richting) != null && ((mijnPositie.getBuur(richting)).getSpelobject()) == null){


                    mijnPositie.removeSelector();
                    mijnPositie = mijnPositie.getBuur(richting);
                    mijnPositie.setSelector(this);
                    gelukt = true;
                }

            else if(mijnPositie.getBuur(richting) != null && (mijnPositie.getBuur(richting)).getSpelobject() != null && ((mijnPositie.getBuur(richting)).getSpelobject()).isBeweegBaar() == true){

                if(mijnPositie.getBuur(richting).getSpelobject().move(richting) == true){
                    
                    mijnPositie.removeSelector();
                    mijnPositie = mijnPositie.getBuur(richting);
                    mijnPositie.setSelector(this);
                    gelukt = true;
                }
                }

            return gelukt;
        }
}